Using Wire

Strange Things, Reminders, and Tips

by Tom Nally

steelweaver52@aol.com

NL42 Home

::::::::::::::::::::::::::::::::::::::::::::::::::::

API Corner

Technical Writing

Eddie V11

Sub Event Handlers

Comboboxes / Hot Keys

Wire - Reminders / Tips

::::::::::::::::::::::::::::::::::::::::::::::::::::

Submission Guildlines

Newsletter Help

Index


Wire, To Date

Wire was first rolled out as a beta product in July of 2005, in Liberty BASIC Newsletter 134. In the articles since that time, I've attempted to provide comprehensive discussions of Wire's features. These articles, in aggregate, can serve as additional documentation to the Wire library. The formal documentation of the functions was typically published with each article (as it is once again here).

With much of the detailed information about Wire already in the books, I thought this would be a good time to attempt to provide a wrap-up article. So here it is! After discussing a few strange things about Wire, I will provide a few reminders and tips!

(Still, if you want an index to all the articles that have been written to date, you can find it here.)

A Few Strange Things About Wire

Wire is not a typical programming aid. There are a few unusual things about Wire, and the programmer probably needs to work with Wire for a day or two before she can start to feel comfortable with the library.

Here are a few of those unusual things about Wire:

  1. Wire 1.0 is an extensive collection of functions, approximately 50! While some of Wire's functions are ten lines long or fewer, several of the functions are more than 100 lines long. The entire library is approximately 2,700 lines of code! So, before the programmer writes even the first line of her application, it might already be the longest program she has ever written. In all the templates and example programs I have written so far, I have placed Wire's functions at the end of the program in order to minimize the extent to which the library will intrude on the hard work that the programmer needs to accomplish.

  2. The names of Wire's functions are usually pretty long, and all function names begin with the characters, "LBWF.". In my view, the function names are too long to manually type into one's code each time a function is used. So, from the very beginning of Wire's development, I've always copied the function names (as well as the function's argument list) from elsewhere in the program. I discuss this more in the Tips section below.

  3. All 3D shapes drawn by Wire's functions will be drawn to a graphicbox called #main.wfscene. If your Wire program contains no other controls, it must at least have a graphicbox with this name. If the programmer really needs to, Wire could draw to a graphicbox with a name other than #main.wfscene. However, the programmer would need to go into the library's functions and change every instance of #main.wfscene to some other control name. As the programmer, you will have to determine for yourself whether it is worth the effort.

  4. Even though the Wire library is in the form of functions, most of these functions do not return a value. Most of the functions are used to create and organize the 3D data from which the wire model objects are made. For the few functions that do return values, I have tried to make that obvious by putting the word "Request" in the function name. (An example would be FF.LBWF.RequestObjectGeometricCenter$(objectname$), which returns the x-, y- and z-coordinates of the geometric center of the object named.) Appropriately, functions of this type are referred to as "Request Functions".

A Few More Things to Remember

Here are a few more things to remember which will help you use the Wire library efficiently:

A Few Tips for Writing Wire Applications

Have fun!


Tomas J. Nally, Steelweaver52@aol.com


NL42 Home

::::::::::::::::::::::::::::::::::::::::::::::::::::

API Corner

Technical Writing

Eddie V11

Sub Event Handlers

Comboboxes / Hot Keys

Wire - Reminders / Tips

::::::::::::::::::::::::::::::::::::::::::::::::::::

Submission Guildlines

Newsletter Help

Index